home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 July / EnigmA AMIGA RUN 09 (1996)(G.R. Edizioni)(IT)[!][issue 1996-07 & 08][EARSAN CD VIII].iso / earcd / comm4 / tcpdl.rdm < prev    next >
Text File  |  1996-06-17  |  6KB  |  225 lines

  1. Short:        V1.04, Fast dl of http. Use for offline reading. prg+src
  2. Author:       patrik.nilsson@mbox3.swipnet.se (Patrik Nilsson)
  3. Uploader:     patrik.nilsson@mbox3.swipnet.se (Patrik Nilsson)
  4. Type:         comm/tcp
  5. Replaces:     tcpdl.lha
  6. Distribution: Aminet
  7.  
  8. tcpdl.doc v1.04
  9.  
  10. COPYRIGHT © 1996 PATRIK NILSSON
  11. ===============================
  12. This program is copyrighted to Patrik Nilsson.  Everybody may use this
  13. program as long as:
  14.  
  15.  * Sending me an email at "patrik.nilsson@mbox3.swipnet.se" telling
  16. that you are using this program, when you find it useful.
  17. (I do not promise to reply...)
  18.  
  19.  * You are using it at your own risk.
  20.  
  21. SHORT:
  22. =====
  23. tcpdl is a program to download files from http hosts. Files to be
  24. downloaded is listed in a file called "tcpdldir:urllist". There are
  25. an example coming with this package.
  26.  
  27. LONG:
  28. =====
  29.  
  30. TO START:
  31. ========
  32. 1. You have to assign "tcpdldir:" anywhere.
  33. (i.e. "assign tcpdldir: work:tcpdldir"
  34. 2. Make sure that tcpdldir:urllist exists.
  35. 3. Run "startnet" (amitcp)
  36. 4. run "tcpdl" from a shell
  37.  
  38. see also: "testtcpdl", a script coming with this package.
  39.  
  40.  
  41. WINDOW:
  42. ======
  43. The window is updated every 3rd second (downloading has got a higher
  44. priority).
  45.  
  46. --cut--
  47. Status        Time    CPS  CSize  FSize  Request (2685/2927)
  48. --cut--
  49.  
  50. WINDOW/Status:
  51. ==============
  52. What is going on?
  53. "Connecting"    Trying to connect a host.
  54. "ERROR"         An error detected.
  55. "Sending"       Sending request.
  56. "Header"        Receiving header.
  57. "Updating"      Requesting using "If-Modified-Since" from a host or
  58.                 loading data from tcpdldir:data/.
  59. "OK"            Okej.
  60. "Receiving"     Receiving data.
  61. "Wait. html"    A limit of 512k html-data to process. Will continue
  62.                 when below limit.
  63. "Proc. html"    Processing html.
  64. "Copying"       Copying html-file from t: to tcpdldir:http/
  65.  
  66. WINDOW/Time:
  67. ============
  68. Time since trying to connect.
  69.  
  70. WINDOW/CPS:
  71. ===========
  72. CPS
  73.  
  74. WINDOW/CSize:
  75. =============
  76. Size of data received.
  77.  
  78. WINDOW/FSize:
  79. =============
  80. Size of data, if available in header.
  81.  
  82. WINDOW/Request:
  83. ===============
  84. Request string.
  85.  
  86. WINDOW/(2685/2927):
  87. ===================
  88. example: 2685 is number of request done.
  89.          2927 is number of requests in memory.
  90.  
  91.  
  92. OTHER NOTES:
  93. ===========
  94. It uses "t:" for temporary files. (When processing html-files.)
  95.  
  96. The program requires about one megabyte to run and 500-1000 bytes for
  97. each request. 
  98.  
  99. You can always break the program using CTRL+C. The program exits as fast
  100. as possible, breaking all downloadings. (It can be a while if processing
  101. large htmlfiles - those processes are not broken.)
  102.  
  103. Filenames that is not a valid amigados-name is replaced with a crc-checksum.
  104. i.e.: http://www.cs.uit.no/~kjelli/thor.html would be
  105.     tcpdldir:http/www.cs.uit.no/_kjelli_CRC_BDF5F321/thor.html
  106.  
  107. The program reties every request 5 times, each of them have a timeout of 
  108. about 20 seconds until connected and then 60 seconds. If the download fail
  109. the request is not repeated.
  110.  
  111. THE "TCPDLDIR:URLLIST"-FILE:
  112. ===========================
  113.  
  114. The file contains: a request-string (url) at left,  one (or more) space(s)
  115. and then flags for the download.
  116.  
  117. http://host/path/             D2 H3 IMG TEXT
  118. http://www.sds.se             D5 H0 IMG
  119.  
  120. the flags can be:
  121.  
  122. D1, D2, ...,  D19          downloading n levels of text/html
  123.  
  124. H0, H1, ...,  H5           If an other host is refered by a HREF
  125.                            max number of levels is set to n.
  126.                            DEFAULT H0; current host only.
  127.  
  128. P0, P1, ...,  P5           If path is other than given in your urllist
  129.                            max number of levels is set to n.
  130.                            DEFAULT <number of Dn levels>
  131.  
  132. IMG                        download IMG-files (pictures at html)
  133.  
  134. TEXT                       download text-files (accept: text/*)
  135.  
  136. ALL                        download all types of files (accept: */*)
  137.  
  138. UPDATE                     If this flag does not exists, the program
  139.                            does not request this file if at harddisk.
  140.  
  141.                            If "UPDATE" exists and file is at harddisk
  142.                            the request contains "If-Modified-Since".
  143.                            (Date sent, when using this, is the same
  144.                            coming with header.
  145.                            see "tcpdldir:data/http/" )
  146.  
  147. example:
  148. =======
  149. You have found kjelli's homepage (thor). You would download everything he
  150. has got at his page.
  151.  
  152. http://www.cs.uit.no/~kjelli/thor.html D19 P0 IMG ALL
  153.  
  154. This will download his html-file for two levels and get his fiends homepages.
  155.  
  156. http://www.cs.uit.no/~kjelli/thor.html D2 P1 IMG
  157.  
  158. OFFLINE-READING (MOSAIC):
  159. ========================
  160. run "amitcp:amitcp" as command
  161. double click at mosaic icon and then open menu "local host". Get a file
  162. from i.e. "tcpdldir:http/www.cs.uit.no/_kjelli_CRC_01234567/thor.html
  163.  
  164.  
  165. Thanks:
  166. ======
  167. This will be edit as soon as possible.
  168.  
  169.  
  170. HISTORY:
  171. =======
  172. v1.00
  173. First public release.
  174.  
  175. ---
  176.  
  177. v1.01
  178. Bugs:
  179. * TAB-problem, fixed.
  180. * Enforcer hits fixed.
  181.  
  182. New:
  183. * Didn't know about "port" in "http://host:port/path"
  184.  
  185. * The program reties every request 4 times, each of them have a timeout of 
  186. about 10 seconds until connected and then 30 seconds. If the download fail
  187. the request is not repeated.
  188.  
  189. ---
  190.  
  191. v1.02
  192. * Now using xen.font 8 if available at disk, else using default font
  193. meaning the text wouldn't fit in its window.
  194.  
  195. Bug:
  196. * "Port" v1.01 didn't work. I hope this will. I didn't test it:(
  197. * More TAB-problems, fixed.
  198.  
  199. New:
  200. *  For safe: if a host fails more than 10 times this host is not
  201. called any more. This task has a priority of -2, which means that
  202. everything that is more important is done before this. 
  203.  
  204. changed:
  205. The program reties every request 5 times, each of them have a timeout of 
  206. about 10 seconds until connected and then 60 seconds. If the download fail
  207. the request is not repeated.
  208.  
  209. ---
  210. v1.03
  211. Rewrote loop "Infotoprocess".
  212.  
  213. changed:
  214. The program retries every request 5 times, each of them have a timeout of 
  215. about 20 seconds until connected and then 60 seconds. If the download fails
  216. the request is not repeated.
  217.  
  218. The program requires about one megabyte to run and 500-1000 bytes for
  219. each request. 
  220.  
  221. ---
  222. v1.04
  223. Now to check about "HTTP/1.0 200 " in the header. (If the request is not
  224. alright the "tcpdldir:data/http/" is not written.)
  225.